package testCase;

import static org.junit.Assert.assertEquals;
import static org.junit.Assert.fail;

import java.util.ArrayList;

import org.junit.Test;

import command.Coller;
import command.Command;

import enregistrement.Enregistreur;
import enregistrement.Impl_Memento;
import enregistrement.Memento;

public class EnregistreurTest {

	@Test
	public void testDemarrerE() {

		ArrayList<Memento> listMemento = new ArrayList<Memento>();
		ArrayList<Command> listCommand = new ArrayList<Command>();
		Memento memento1 = new Impl_Memento();
		Memento memento2 = new Impl_Memento();
		Command coller1 = new Coller();
		Command coller2 = new Coller();
		listMemento.add(memento1);
		listMemento.add(memento2);
		listCommand.add(coller1);
		listCommand.add(coller2);
		boolean etat = false;

		Enregistreur enregistreur = new Enregistreur();
		enregistreur.setEtat(etat);
		enregistreur.setListCommand(listCommand);
		enregistreur.setListMemento(listMemento);

		enregistreur.demarrerE(true);

		assertEquals(enregistreur.getEtat(), true);
		assertEquals(enregistreur.getCommandList().size(), 0);
		assertEquals(enregistreur.getMementoList().size(), 0);

	}

	@Test
	public void testArreterE() {
		boolean etat = true;

		Enregistreur enregistreur = new Enregistreur();
		enregistreur.setEtat(etat);

		enregistreur.arreterE(false);

		assertEquals(enregistreur.getEtat(), false);
	}

	@Test
	public void testRejouer() {
		fail("Not yet implemented");
	}

}
